Repository navigation
Ground Yardstick work choices in paired Goal outcomes - #8261
Conversation
|
This pull request has merge conflicts with Choose the remote for the base repository, not an out-of-date fork. git fetch upstream
git rebase upstream/main
# Resolve each conflict, git add the resolved files, then git rebase --continue.
git push --force-with-lease origin HEADFor a same-repository clone whose Keep the DCO |
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
|
Hi @loopx-agent, the DCO If the log confirms a missing |
cea7d40 to
26023a0
Compare
…view-fix-8261-20261107 Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
…asis Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
loopx-agent
left a comment
There was a problem hiding this comment.
Reviewer: model_agent · OpenAI · gpt-6.1-sol · runtime_reported · max
Request changes conclusion (author-owned PR; GitHub blocks formal self-review)
[P1] 在计算 ranking 之前用当前 target 与 acceptance basis 过滤 canonical findings,保留独立合法的新 pair。。同一 Todo、问题和 evaluator profile 下,验收依据从 v1 切到 v2。原路径没有把 v1 候选当成 v2 的新比较基线。。真实 SQLite 上,v1 测量 A/B、v2 测量 C 后,v2 的 comparison_candidate_ref 指向仅在 v1 测过的 old-b。。在计算 ranking 之前用当前 target 与 acceptance basis 过滤 canonical findings,保留独立合法的新 pair。。
动机 / Motivation
启用 Yardstick 的 agent 会用量化提示选择同一工作的下一次候选比较。 同一 Todo、问题和 evaluator profile 下,验收依据从 v1 切到 v2。原路径没有把 v1 候选当成 v2 的新比较基线。 新的同范围配对能够给出 advisory 提示,但更换验收依据后也会推荐只有旧范围测量的候选。 此次验证覆盖写入、读回与提示的归属。未运行模型、评估实际得分或改写 Goal acceptance。
改动思路 / Approach
复查旧、新 Yardstick profile 与 Goal 绑定,以及 Explore 聚合调用。现有指标、scope、版本检查仍应复用,但还需要实际 target 归属。 在计算 ranking 之前用当前 target 与 acceptance basis 过滤 canonical findings,保留独立合法的新 pair。 复查旧、新 Yardstick profile 与 Goal 绑定,以及 Explore 聚合调用。现有指标、scope、版本检查仍应复用,但还需要实际 target 归属。 在计算 ranking 之前用当前 target 与 acceptance basis 过滤 canonical findings,保留独立合法的新 pair。
具体改动 / Changes
按 docs/architecture/rfcs/target-yardstick-stride-decisions-v0.md 在 fa266a2 的边界逐项核对。 docs/architecture/rfcs/target-yardstick-stride-decisions-v0.md
- invariant-2 · not_met。每条测量必须对应实际 target、candidate、evaluator 及条件。
- invariant-1 · implemented。提示保持原验收与 authoritative evaluator 的所有权。
关键代码讲解
measuredSearchComparison。从 exact profile 取 distinct candidates 并检验 proxy 的候选对。 loopx/control_plane/work_items/yardstick_decision.tsprojectWorkYardstickCue。筛当前工作证据并生成建议。 loopx/control_plane/work_items/yardstick_decision.tsprojectExploreTurnContext。在普通 context 暴露新增建议和详细读入口。 loopx/control_plane/capabilities/explore_turn_context.ts
5 个真实 Python 与 7 个 TS 已通过。独立真实 CLI 跨依据反例基线通过、head 失败。 本地 lint 与 diff 检查通过。复查了所有改动的运行时、文档与测试,以及未改的实际入口。
对主干的风险 / Risks
5 个真实 Python 与 7 个 TS 已通过。独立真实 CLI 跨依据反例基线通过、head 失败。 真实 SQLite 上,v1 测量 A/B、v2 测量 C 后,v2 的 comparison_candidate_ref 指向仅在 v1 测过的 old-b。 关闭 Yardstick 移除新增 cue,但真实 CLI 保留既有测量历史。启用的同目标正例通过。 此次验证覆盖写入、读回与提示的归属。未运行模型、评估实际得分或改写 Goal acceptance。
语义与 CI 对齐
每条测量必须对应实际 target、candidate、evaluator 及条件 现有类型化捕获或结果对象仍是来源。缺陷发生在派生视图的适用范围。 CI 未查询。复核命令为 uv run --extra test python -m pytest -q tests/control_plane/test_work_yardstick_cli.py。
我的整体评价 / Verdict
有阻塞发现。 真实 SQLite 上,v1 测量 A/B、v2 测量 C 后,v2 的 comparison_candidate_ref 指向仅在 v1 测过的 old-b。 在计算 ranking 之前用当前 target 与 acceptance basis 过滤 canonical findings,保留独立合法的新 pair。 检查范围为机器可读 CLI、捕获读取及其消费命令,未改渲染页面。 真实 SQLite 上,v1 测量 A/B、v2 测量 C 后,v2 的 comparison_candidate_ref 指向仅在 v1 测过的 old-b。
English verdict: REQUEST_CHANGES. Head 26023a0. The real SQLite readback recommends a candidate evaluated under an older acceptance basis.
loopx-agent
left a comment
There was a problem hiding this comment.
Reviewer: model_agent | gpt-6.1-sol | OpenAI | runtime_reported | reasoning_effort=max
Approval conclusion (author-owned PR; GitHub blocks formal self-approval)
原 P1 已修复,无其他阻塞发现。真实 SQLite 验证中,同一 Todo 改用新验收依据后,旧候选没有进入新比较。同名候选的旧 proxy 也不会触发新依据下的反转提示。 原 P1 评审
动机 / Motivation
启用 Yardstick 的 Agent 会用实测证据选择下一次候选比较。原提案在验收依据变更后,仍会把只在旧依据下测过的候选推荐为比较基线。当前版本先确定当前工作的目标和验收依据,再用归属相符的已提交记录比较候选。只获得一条新结果时保持未知,第二条合格结果到达后才给出新的比较提示。验证覆盖写回、排序、提示和后续读回,真实模型采用与长期效果尚未测量。
改动思路 / Approach
如果只在排序后隐藏旧候选,原先被旧分数挤出的合法新组合仍无法出现。当前方案先筛选同一 Goal、Agent、Todo、问题与完整 target 的 canonical findings,再复用已有测量聚合。比较仅使用当前 target 的已提交事实,代理排序还要匹配同一对候选。当前 PR 边界是现有 Yardstick 的建议投影、证据详情和可验证读回。原作者填写的下一步理由和普通测量历史仍可读。
建议用于决定下一个有信息量的比较。原验收、预算、权限和结算义务仍由各自所有者决定。启用选项不会自动运行评估器。
具体改动 / Changes
按 fa266a2430085a0969ec627f4fb5ce719f037f41 的 docs/architecture/rfcs/target-yardstick-stride-decisions-v0.md 核对。远端当前 main 比较范围已确认是五个文件、291 行新增和 22 行删除。本地与远端均定位到同一变更。 固定版本的 Yardstick 规范
- invariant-1。排序结果只形成建议,源结果和代理结果分开。接受条件和 authoritative evaluator 的所有权沿原契约。
- invariant-2。归属先按当前工作的 target 筛选,之后按输入版本、指标、方向、范围和 evaluator profile 聚合。缺少合格第二候选时仍没有建议。
- invariant-3。比较和读回提供已提交的观察。后续采用及结果要由新工作独立验证。
关键代码讲解
belongsToWork要求源 finding 的 Goal、Agent 和 Todo 一致,当前决策仍按已有顺序确定。 工作身份projectWorkYardstickCue先按问题、工作身份、目标摘要、范围和验收引用取源记录,再调用已有聚合。它不会通过相似名称借用旧依据或手工测量。 当前依据筛选measuredSearchComparison要求两个不同的有限测量结果,按完整 profile 和指标方向比较。代理的两个候选必须与实际结果的组合一致,顺序可以不同。 配对与方向projectExploreTurnContext在启用且当前工作合格时补充可选 cue,保留原 next-action reason。详情沿现有读取路径保留实际依据、候选和来源。 短提示与详情
对主干的风险 / Risks
- PASS。独立运行 6 项 SQLite CLI 与 7 项 TypeScript 用例。旧 v1 的 A/B 留在历史,只有新 v2 的 C 时无比较,D 到达后 C/D 能独立排序。已有后续工作夹具同时验证采用提示后仍按原正确性条件核对产物。
- PASS。独立用同名候选在旧依据形成代理反转。新依据只有 outcome 时,没有 proxy 或反转提示。写入当前依据的同一对 proxy 后,才出现新反转,来源是新的两组 finding。
- PASS。关闭 Yardstick 的实际 SQLite 基线和 head 得到一致的普通测量读回,没有工作建议。无测量的普通 Turn 保留原入口。未额外运行模型或 evaluator。
- PASS。精确 head 的类型检查、定向 Ruff、签名及 diff 检查通过。作者在前一主干基线的标准预检执行 5 个直接和 19 个选中检查,零失败。刷新远端基线后复核 #8268 在共享文件中改的是另一段附件投影,本地合成无冲突。按策略未查询 CI。
语义与 CI 对齐
沿用既有 Yardstick 和 Explore 词汇,新增的是派生的建议字段。目标范围取自源 finding 的明确绑定,建议不会修改 acceptance、自动选择工作、授权执行或扣费。
我的整体评价 / Verdict
批准 f7679ebd13123fb69130701f294c3d62288773ae 的五文件源码差分。旧跨依据反例已修复,新依据的合法组合仍能独立排序。后续轮次可沿同一工作读回当前比较和原历史,保持原验收与回退路径。当前判断由确定性 SQLite 写回和读回支持,模型采用、真实 benchmark 收益和全量净成本仍待验证。
检查的是 CLI 与捕获上下文,未修改渲染页面,视觉审阅不适用。GitHub 发布为同账号的 COMMENTED 结论。
English verdict: APPROVE — At f7679eb, the comparison uses current-target evidence before ranking and excludes even same-name proxy pairs from an older acceptance basis.
An opted-in Yardstick work turn can use committed measurements of distinct candidates under the same declared work, target, acceptance reference and measurement profile. The comparison is computed from those source findings before ranking. The compact view retains the authored reason and adds an advisory cue. Detailed context retains source references, comparison conditions and the existing acceptance boundary. A proxy reversal appears only when the proxy measured the same pair.
This is the standalone mainline proposal for #8250. Main contains the scoped Yardstick owner from #8202 and the paired-finding writer from #8207.
Verification